package com.example.demo.db.entity;

import java.math.BigDecimal;

/**
 * TODO
 *
 * @author wuhong-016
 * @version v1.0.0
 * @time: 2021/8/29 21:25
 */
public class RateEntityBuilder {

    RateEntity rateEntity;

    public RateEntityBuilder() {
        rateEntity = new RateEntity();
    }

    public RateEntity build() {
        return rateEntity;
    }

    public RateEntityBuilder setBranchCode(String branchCode) {
        rateEntity.setBranchCode(branchCode);
        return this;
    }

    public RateEntityBuilder setProductCode(String productCode) {
        rateEntity.setProductCode(productCode);
        return this;
    }

    public RateEntityBuilder setCoverageCode(String coverageCode) {
        rateEntity.setCoverageCode(coverageCode);
        return this;
    }

    public RateEntityBuilder setVehicleUsage(String vehicleUsage) {
        rateEntity.setVehicleUsage(vehicleUsage);
        return this;
    }

    public RateEntityBuilder setVehicleType(String vehicleType) {
        rateEntity.setVehicleType(vehicleType);
        return this;
    }

    public RateEntityBuilder setVehicleClass(String vehicleClass) {
        rateEntity.setVehicleClass(vehicleClass);
        return this;
    }

    public RateEntityBuilder setSeatCountMax(Integer seatCountMin, Integer seatCountMax) {
        rateEntity.setSeatCountMin(seatCountMin);
        rateEntity.setSeatCountMax(seatCountMax);
        return this;
    }

    public RateEntityBuilder setCarryingCapacityMax(Integer carryingCapacityMin, Integer carryingCapacityMax) {
        rateEntity.setCarryingCapacityMin(carryingCapacityMin);
        rateEntity.setCarryingCapacityMax(carryingCapacityMax);
        return this;
    }

    public RateEntityBuilder setUseAgesMin(BigDecimal useAgesMin, BigDecimal useAgesMax) {
        rateEntity.setUseAgesMin(useAgesMin);
        rateEntity.setUseAgesMax(useAgesMax);
        return this;
    }

    public RateEntityBuilder setPurchasePriceMin(BigDecimal purchasePriceMin, BigDecimal purchasePriceMax) {
        rateEntity.setPurchasePriceMin(purchasePriceMin);
        rateEntity.setPurchasePriceMax(purchasePriceMax);
        return this;
    }

    public RateEntityBuilder setFactor(String factor) {
        rateEntity.setFactor(factor);
        return this;
    }

    public RateEntityBuilder setFactorB(String factorB) {
        rateEntity.setFactorB(factorB);
        return this;
    }

    public RateEntityBuilder setRateScaleA(BigDecimal rateScaleA) {
        rateEntity.setRateScaleA(rateScaleA);
        return this;
    }

    public RateEntityBuilder setRateScaleB(BigDecimal rateScaleB) {
        rateEntity.setRateScaleB(rateScaleB);
        return this;
    }


}
